<?xml version="1.0" encoding="UTF-8"?>
<schemalist>

	<!-- Saved state / Window -->
		<enum id="@SCHEMA_ID@.saved-state.window.states">
			<value nick="Normal" value="0" />
			<value nick="Maximized" value="1" />
			<value nick="Fullscreen" value="2" />
		</enum>

		<schema path="@SCHEMA_PATH@/saved-state/window/" id="@SCHEMA_ID@.saved-state.window">
			<key name="state" enum="@SCHEMA_ID@.saved-state.window.states">
				<default>"Normal"</default>
				<summary>Saved window state</summary>
			</key>
			<key name="width" type="i">
				<default>-1</default>
				<summary>Window width</summary>
			</key>
			<key name="height" type="i">
				<default>-1</default>
				<summary>Window height</summary>
			</key>
			<key name="x" type="i">
				<default>-1</default>
				<summary>Window x position</summary>
			</key>
			<key name="y" type="i">
				<default>-1</default>
				<summary>Window y position</summary>
			</key>
		</schema>

	<!-- Saved state / Games view -->
		<enum id="@SCHEMA_ID@.saved-state.games-view.styles">
			<value nick="Grid" value="0" />
			<value nick="List" value="1" />
		</enum>

		<enum id="@SCHEMA_ID@.saved-state.games-view.sort-modes">
			<value nick="Name" value="0" />
			<value nick="Last launch" value="1" />
			<value nick="Playtime" value="2" />
		</enum>

		<enum id="@SCHEMA_ID@.saved-state.games-view.group-modes">
			<value nick="None" value="0" />
			<value nick="Status" value="1" />
			<value nick="Source" value="2" />
		</enum>

		<enum id="@SCHEMA_ID@.saved-state.games-view.filter-platforms">
			<value nick="All" value="0" />
			<value nick="Linux" value="1" />
			<value nick="Windows" value="2" />
			<value nick="macOS" value="3" />
			<value nick="Emulated" value="4" />
		</enum>

		<schema path="@SCHEMA_PATH@/saved-state/games-view/" id="@SCHEMA_ID@.saved-state.games-view">
			<key name="style" enum="@SCHEMA_ID@.saved-state.games-view.styles">
				<default>"Grid"</default>
				<summary>Selected view style</summary>
			</key>
			<key name="sort-mode" enum="@SCHEMA_ID@.saved-state.games-view.sort-modes">
				<default>"Name"</default>
				<summary>Selected sort mode</summary>
			</key>
			<key name="group-mode" enum="@SCHEMA_ID@.saved-state.games-view.group-modes">
				<default>"Status"</default>
				<summary>Selected group mode</summary>
			</key>
			<key name="filter-source" type="s">
				<default>''</default>
				<summary>Selected game source filter</summary>
			</key>
			<key name="filter-platform" enum="@SCHEMA_ID@.saved-state.games-view.filter-platforms">
				<default>"All"</default>
				<summary>Selected platform filter</summary>
			</key>
		</schema>

	<!-- UI / Appearance -->
		<enum id="@SCHEMA_ID@.ui.appearance.icon-styles">
			<value nick="Theme-based" value="0" />
			<value nick="Symbolic" value="1" />
			<value nick="Colored" value="2" />
		</enum>

		<schema path="@SCHEMA_PATH@/ui/appearance/" id="@SCHEMA_ID@.ui.appearance">
			<key name="dark-theme" type="b">
				<default>false</default>
				<summary>Dark theme</summary>
			</key>
			<key name="icon-style" enum="@SCHEMA_ID@.ui.appearance.icon-styles">
				<default>"Theme-based"</default>
				<summary>Icon style</summary>
			</key>
			<key name="list-style" type="as">
				<default>['installed-icon', 'installed-title-bold', 'installed-status', 'uninstalled-icon', 'uninstalled-dim']</default>
				<summary>List style</summary>
			</key>
			<key name="grid-platform-icons" type="b">
				<default>true</default>
				<summary>Show platform icons in grid view</summary>
			</key>
			<key name="grid-card-width" type="i">
				<default>460</default>
				<summary>Grid view game card width</summary>
			</key>
			<key name="grid-card-height" type="i">
				<default>215</default>
				<summary>Grid view game card height</summary>
			</key>
		</schema>

	<!-- UI / Behavior -->
		<schema path="@SCHEMA_PATH@/ui/behavior/" id="@SCHEMA_ID@.ui.behavior">
			<key name="grid-doubleclick" type="b">
				<default>false</default>
				<summary>Run games with doubleclick</summary>
			</key>
			<key name="merge-games" type="b">
				<default>true</default>
				<summary>Merge games from different sources</summary>
			</key>
			<key name="import-tags" type="b">
				<default>true</default>
				<summary>Import tags</summary>
			</key>
		</schema>

	<!-- Auth -->
		<schema path="@SCHEMA_PATH@/auth/steam/" id="@SCHEMA_ID@.auth.steam">
			<key name="enabled" type="b">
				<default>true</default>
				<summary>Is Steam enabled</summary>
			</key>
			<key name="authenticated" type="b">
				<default>false</default>
				<summary>Did user agree to read Steam configs</summary>
			</key>
			<key name="api-key" type="s">
				<default>'@PREF_API_KEY_STEAM@'</default>
				<summary>Steam API key</summary>
			</key>
		</schema>

		<schema path="@SCHEMA_PATH@/auth/gog/" id="@SCHEMA_ID@.auth.gog">
			<key name="enabled" type="b">
				<default>true</default>
				<summary>Is GOG enabled</summary>
			</key>
			<key name="authenticated" type="b">
				<default>false</default>
				<summary>Is user authenticated</summary>
			</key>
			<key name="access-token" type="s">
				<default>''</default>
				<summary>GOG access token</summary>
			</key>
			<key name="refresh-token" type="s">
				<default>''</default>
				<summary>GOG refresh token</summary>
			</key>
		</schema>

		<schema path="@SCHEMA_PATH@/auth/humble/" id="@SCHEMA_ID@.auth.humble">
			<key name="enabled" type="b">
				<default>true</default>
				<summary>Is Humble enabled</summary>
			</key>
			<key name="authenticated" type="b">
				<default>false</default>
				<summary>Is user authenticated</summary>
			</key>
			<key name="access-token" type="s">
				<default>''</default>
				<summary>Humble access token</summary>
			</key>
			<key name="load-trove-games" type="b">
				<default>true</default>
				<summary>Is Trove enabled</summary>
			</key>
		</schema>

		<schema path="@SCHEMA_PATH@/auth/itch/" id="@SCHEMA_ID@.auth.itch">
			<key name="enabled" type="b">
				<default>true</default>
				<summary>Is itch.io enabled</summary>
			</key>
			<key name="authenticated" type="b">
				<default>false</default>
				<summary>Did user agree to read itch.io configs</summary>
			</key>
			<key name="api-key" type="s">
				<default>'@PREF_API_KEY_ITCH@'</default>
				<summary>itch.io API key</summary>
			</key>
		</schema>

	<!-- Paths -->
		<schema path="@SCHEMA_PATH@/paths/" id="@SCHEMA_ID@.paths">
			<key name="steam-home" type="s">
				<default>'~/.steam'</default>
				<summary>Steam installation directory</summary>
			</key>
			<key name="gog-games" type="s">
				<default>'~/Games/GOG'</default>
				<summary>GOG games directory</summary>
			</key>
			<key name="humble-games" type="s">
				<default>'~/Games/HumbleBundle'</default>
				<summary>Humble games directory</summary>
			</key>
			<key name="itch-home" type="s">
				<default>'~/.config/itch'</default>
				<summary>itch.io config/installation directory</summary>
			</key>
			<key name="itch-games" type="s">
				<default>'~/Games/itch'</default>
				<summary>itch.io games directory</summary>
			</key>
		</schema>

	<!-- Paths / Collection -->
		<schema path="@SCHEMA_PATH@/paths/collection/" id="@SCHEMA_ID@.paths.collection">
			<key name="root" type="s">
				<default>'~/Games/_Collection'</default>
				<summary>Collection root directory</summary>
			</key>
		</schema>

		<schema path="@SCHEMA_PATH@/paths/collection/gog/" id="@SCHEMA_ID@.paths.collection.gog">
			<key name="game-dir" type="s">
				<default>'$root/GOG/$game'</default>
				<summary>GOG collection: game directory</summary>
			</key>
			<key name="installers" type="s">
				<default>'$game_dir'</default>
				<summary>GOG collection: installers directory</summary>
			</key>
			<key name="dlc" type="s">
				<default>'$game_dir/dlc'</default>
				<summary>GOG collection: dlc directory</summary>
			</key>
			<key name="bonus" type="s">
				<default>'$game_dir/bonus'</default>
				<summary>GOG collection: bonus content directory</summary>
			</key>
		</schema>

		<schema path="@SCHEMA_PATH@/paths/collection/humble/" id="@SCHEMA_ID@.paths.collection.humble">
			<key name="game-dir" type="s">
				<default>'$root/Humble Bundle/$game'</default>
				<summary>Humble collection: game directory</summary>
			</key>
			<key name="installers" type="s">
				<default>'$game_dir'</default>
				<summary>Humble collection: installers directory</summary>
			</key>
		</schema>

	<!-- Controller -->
		<schema path="@SCHEMA_PATH@/controller/" id="@SCHEMA_ID@.controller">
			<key name="enabled" type="b">
				<default>true</default>
				<summary>Is controller support enabled</summary>
			</key>
			<key name="focus-window" type="b">
				<default>true</default>
				<summary>Should main window be focused when Guide button is pressed</summary>
			</key>
			<key name="known-controllers" type="as">
				<default>[]</default>
				<summary>Known controllers list</summary>
			</key>
			<key name="ignored-controllers" type="as">
				<default>[]</default>
				<summary>Ignored controllers list</summary>
			</key>
		</schema>

	<!-- Compat / RetroArch -->
		<schema path="@SCHEMA_PATH@/compat/retroarch/" id="@SCHEMA_ID@.compat.retroarch">
			<key name="core-dir" type="s">
				<default>'@PREF_LIBRETRO_CORE_DIR@'</default>
				<summary>libretro cores directory</summary>
			</key>
			<key name="core-info-dir" type="s">
				<default>'@PREF_LIBRETRO_CORE_INFO_DIR@'</default>
				<summary>libretro core info directory</summary>
			</key>
			<key name="cores-blacklist" type="s">
				<default>'3dengine|ffmpeg|dosbox|dosbox_svn|dosbox_svn_glide'</default>
				<summary>Ignored libretro cores list (separated by '|')</summary>
			</key>
			<key name="game-executable-extensions-blacklist" type="s">
				<default>'bin|dat|exe|zip|7z|gz'</default>
				<summary>Ignored game file extensions list (separated by '|')</summary>
			</key>
		</schema>

	<!-- Providers / Images -->
		<schema path="@SCHEMA_PATH@/providers/images/steamgriddb/" id="@SCHEMA_ID@.providers.images.steamgriddb">
			<key name="enabled" type="b">
				<default>true</default>
				<summary>Is SteamGridDB enabled</summary>
			</key>
			<key name="api-key" type="s">
				<default>'@PREF_API_KEY_STEAMGRIDDB@'</default>
				<summary>SteamGridDB API key</summary>
			</key>
		</schema>

		<schema path="@SCHEMA_PATH@/providers/images/jinx-sgvi/" id="@SCHEMA_ID@.providers.images.jinx-sgvi">
			<key name="enabled" type="b">
				<default>true</default>
				<summary>Is Jinx's Steam Grid View Images enabled</summary>
			</key>
		</schema>

		<schema path="@SCHEMA_PATH@/providers/images/steam/" id="@SCHEMA_ID@.providers.images.steam">
			<key name="enabled" type="b">
				<default>true</default>
				<summary>Is Steam image search enabled</summary>
			</key>
		</schema>

	<!-- Providers / Data / IGDB -->
		<enum id="@SCHEMA_ID@.providers.data.igdb.preferred-description">
			<value nick="Game" value="0" />
			<value nick="IGDB" value="1" />
			<value nick="Both" value="2" />
		</enum>

		<schema path="@SCHEMA_PATH@/providers/data/igdb/" id="@SCHEMA_ID@.providers.data.igdb">
			<key name="enabled" type="b">
				<default>true</default>
				<summary>Is IGDB enabled</summary>
			</key>
			<key name="api-key" type="s">
				<default>'@PREF_API_KEY_IGDB@'</default>
				<summary>IGDB API key</summary>
			</key>
			<key name="preferred-description" enum="@SCHEMA_ID@.providers.data.igdb.preferred-description">
				<default>"Game"</default>
				<summary>Preferred description source</summary>
			</key>
		</schema>

	<!-- Tweaks -->
		<schema path="@SCHEMA_PATH@/tweaks/" id="@SCHEMA_ID@.tweaks">
			<key name="global" type="as">
				<default>[]</default>
				<summary>Global tweaks list</summary>
			</key>
		</schema>
</schemalist>
